A plurality of data streams are often interleaved with one another in a time-multiplexed manner. While time-multiplexed data may be generated in a variety of applications, vehicles, such as aircraft, frequently generate flight test, maintenance, or quality assurance data, i.e., telemetry data, from a variety of sensors, and typically encode this data in a time-division multiplexed sequence. These time-multiplexed data sequences are commonly transmitted over aircraft data busses or data links, or stored in mass storage units. For example, commercial aircraft may collect quality assurance data by monitoring and recording various events, transducer measurements and other parameters, thereby facilitating maintenance, aircraft safety and accident investigations. This quality assurance data may be similar in some respects in content and format to “black box” data. The quality assurance data is typically transmitted via a time-division multiplexed data bus, such as an ARINC 717 data bus. The quality assurance data is then recorded for post-flight processing and analysis or downloaded to the ground during flight. In instances in which the quality assurance data is transmitted to the ground, such as to an airline maintenance operations center, while the aircraft is enroute, maintenance personnel may begin preparation and scheduling of repairs for the aircraft before the aircraft arrives at the gate, thereby increasing the speed with which an aircraft may be turned around at a gate between flights and potentially providing meaningful cost saving to the airlines.
Quality assurance and other telemetry or time-multiplexed data may be desirably compressed due to the high data rates at which such data is transmitted. However, time-multiplexed data that is transmitted at lower data rates may also be desirably compressed. For example, while quality assurance data of the type described above has a relatively low data rate, such as about 512 bytes per second, the quality assurance data is collected continuously while an aircraft is in operation. The quality assurance data is generally transmitted in a burst with the voluminous data that is transmitted representing many hours of data and potentially consisting of tens of megabytes. The bandwidth of the downlink may be limited and costly. In order to reduce the cost, time and bandwidth requirements associated with the downloading of the quality assurance data, the quality assurance data may be compressed.
One technique for compressing the quality assurance data is to utilize a text or file compression algorithm, such as a commercial ZIP algorithm. While a text or file compression algorithm will compress the quality assurance data, the extent of the compression is somewhat limited as a text or file compression algorithm does not take advantage of the correlation structure of the data brought about by the interleaving of the plurality of data streams. In this regard, the ZIP compression algorithm and other text or file compression algorithms generally rely on local correlations and, as a result, fail to improve the compression of the quality assurance data by exploiting redundancies in the data that arrives from any one particular data stream or source since the individual data elements from any particular data stream or source are typically widely separated within a time-division multiplexed frame.
Like other time-division multiplexed data, quality assurance data generally consists of multiple interleaved streams of data being provided by different respective data sources. This data may include measurements from various transducers, discrete (bi-level) data, text fields, and numerous other parameters. The different streams of data that comprise the quality assurance data may be interleaved at different respective sample rates which, in one example, range between 8 times per second and once every 64 seconds.
In instances in which the frame structure which defines the manner in which the multiple data streams are interleaved is known, the quality assurance data can be more efficiently compressed. In this regard, compression algorithms may utilize the redundancy within the respective data streams to more efficiently compress the data even though the data streams have been interleaved, widely so in some situations.
The requirement that the frame structure be known to the compression algorithm may impose a logistical burden or, at a minimum, necessitate the transmission of information defining the frame sequence to the compression algorithm, thereby undesirably adding to the network load and, in some instances, congestion. Still further, in some instances, the frame structure may simply not be known. While time-multiplexed data for which the frame structure is unknown may still be compressed to some degree by utilizing text or file compression algorithms, the extent of the compression offered by such compression algorithms may be less than desired in some instances, particularly in light of the voluminous nature of time-multiplexed data in some applications, such as telemetry.